/*
 *
 * IDAL.java
 * Copyright(c) 2013 Jorge Barrera, Todos los derechos reservados
 * http://systelog.blogspot.com/
 */
package controlador;

import java.sql.ResultSet;
import java.sql.SQLException;

/**
 * Administra la conexion a la BD
 *
 * @version 1.0 [2013/10/13]
 * @author Jorge Barrera
 */
public interface IDAL {

    /**
     * Cierra la conexion a la bd
     *
     * @throws ClassNotFoundException
     * @throws SQLException
     */
    void closeConnect() throws ClassNotFoundException, SQLException;

    /**
     * Pemite obtener set de datos de una consulta
     *
     * @param query
     * @return ResultSet
     * @throws SQLException
     * @throws ClassNotFoundException
     */
    ResultSet getData(String query) throws SQLException, ClassNotFoundException;

    /**
     * Permite obtener el resultado de un query
     *
     * @return ResultSet
     */
    ResultSet getResultSet();

    /**
     * Permite ejecutar acciones de cambio de datos
     *
     * @param query
     * @return boolean
     * @throws SQLException
     * @throws ClassNotFoundException
     */
    boolean setData(String query) throws SQLException, ClassNotFoundException;
}
